///////////////////////////////////////////////////////////
// 
//
//
///////////////////////////////////////////////////////////

// Local Includes
#include "HaptFont.h"

// HaptCtrl Includes
#include <HaptWiimote.h>

// SDL Includes
#include <sdl.h>

// System Includes

class MyWindow
{
  public:
    // Constructor / Destructor
    MyWindow();
    ~MyWindow();
  
    // Init / Fini
    bool init();
    bool fini();

    // Execute
    bool execute( int argv, char* argc[] );
    bool setViewPort( int x, int y, int w, int h );

  protected:
    // Rendering
    bool _preFrame();
    bool _postFrame();
    bool _render();

    // 
    bool _renderText();
    bool _renderPointers();

    //
    bool _renderXZ();
    bool _renderXY();
    bool _renderOrient();
    
    bool _rendPos( HaptWiimote *pMote );
    
    // Input
    bool _handleEvents();
  
    // Initialization 
    bool _initGL();
    bool _initHaptics();

  protected:
    // SDL Surface
    SDL_Surface      *_pSurface;

    // HaptFont
    HaptFont          _font;

    // Size
    int     _w;
    int     _h;

    // Text Buffer
    char    _buff[256];

    //
    int          _nMote;

    // Exit variable
    bool    _bQuit;
};